package chapter4;

public class BreakTest {
    public static void main(String[] args) {
        //testBreak();
        //testBreak2();
        testBreakWithLabel();
    }

    /**
     * 测试break在循环中的作用
     */
    public static void testBreak() {
        for (int i = 0; i < 10; i++) {
            System.out.println("i的值是:" + i);
            if(i == 2) {
                //break可以跳出循环，结束循环的流程
                break;
            }
        }
    }

    /**
     * 测试break语句在嵌套循环中的作用
     */
    public static void testBreak2() {
        for (int i = 0; i < 5; i++) {
            for (int j = 0; j < 3; j++) {
                System.out.println("i的值为:" + i);
                //嵌套循环时，break只跳出当前层的循环
                if(j == 1) {
                    break;
                }
            }
        }
    }

    /**
     * 使用break跳出循环，同时配合标签指定跳出哪层循环
     */
    public static void testBreakWithLabel() {
        outer:
        for (int i = 0; i < 5; i++) {
            for (int j = 0; j < 3; j++) {
                System.out.println("i的值为:" + i);
                if(j == 1) {
                    break outer;
                }
            }
        }
    }
}